{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "format": "row" }, "outputs": [ { "ename": "AttributeError", "evalue": "'list' object has no attribute 'create_svg'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mget_ipython\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrun_cell_magic\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'dot'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m''\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'\\ndigraph apply {\\n rankdir=BT; fontname=Helvetica\\n node[peripheries=0, style=filled, fillcolor=blue, fontcolor=white,fontname=Helvetica,fixedsize=true,width=1.8,height=0.8]\\n edge[fontname=Helvetica,fontsize=12,fontcolor=blue,labeldistance=1.8]\\n\\n subgraph cluster_student {\\n label=\"Student\";\\n style=filled; fillcolor=grey92\\n submit [shape=record, style=\"filled,rounded\",label=\"Submit\\\\nRegistration\\\\n\"]\\n letter [shape=box, peripheries=0, label=\"Letter\"]\\n }\\n subgraph cluster_admin {\\n label=\"Admin\"\\n style=filled; fillcolor=grey92\\n complete [shape=diamond, height=1.5, label=\"Application\\\\nComplete?\"]\\n admreject [shape=record, label=\"Write Rejection\\\\nLetter\\\\n\"]\\n }\\n subgraph cluster_registrar {\\n label=\"Registrar\"\\n style=filled; fillcolor=grey92\\n min [shape=diamond, height=1.8, label=\"Minimum\\\\nStandard\\\\nMet?\"]\\n }\\n subgraph cluster_faculty {\\n label=\"Faculty\"\\n style=filled; fillcolor=grey92\\n {rank=same;\\n suitable [shape=diamond, height=1.8,label=\"Suitable for\\\\nProgram?\\\\n\"]\\n facaccept [shape=record, label=\"Write Acceptance\\\\nLetter\\\\n\"]\\n }\\n }\\n\\n submit -> complete\\n complete -> submit [headlabel=\"no\"]\\n complete -> min [headlabel=\"yes\"]\\n min -> admreject [headlabel=\"no\"]\\n min -> suitable [headlabel=\"yes\"]\\n suitable -> admreject [headlabel=\"no\"]\\n suitable -> facaccept [headlabel=\"yes\"]\\n admreject -> letter\\n facaccept -> letter\\n}'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m/opt/anaconda3/lib/python3.6/site-packages/IPython/core/interactiveshell.py\u001b[0m in \u001b[0;36mrun_cell_magic\u001b[0;34m(self, magic_name, line, cell)\u001b[0m\n\u001b[1;32m 2113\u001b[0m \u001b[0mmagic_arg_s\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvar_expand\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mline\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstack_depth\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2114\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbuiltin_trap\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2115\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmagic_arg_s\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcell\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2116\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2117\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/anaconda3/lib/python3.6/site-packages/metakernel/magics/dot_magic.py\u001b[0m in \u001b[0;36mdot\u001b[0;34m(line, cell)\u001b[0m\n\u001b[1;32m 69\u001b[0m \"\"\"\n\u001b[1;32m 70\u001b[0m \u001b[0mmagic\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcode\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcell\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 71\u001b[0;31m \u001b[0mmagic\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcell_dot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m/opt/anaconda3/lib/python3.6/site-packages/metakernel/magics/dot_magic.py\u001b[0m in \u001b[0;36mcell_dot\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 47\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"You need to install pydot\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 48\u001b[0m \u001b[0mgraph\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mpydot\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgraph_from_dot_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcode\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 49\u001b[0;31m \u001b[0msvg\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mgraph\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcreate_svg\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 50\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mhasattr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msvg\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"decode\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 51\u001b[0m \u001b[0msvg\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msvg\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdecode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"utf-8\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mAttributeError\u001b[0m: 'list' object has no attribute 'create_svg'" ] } ], "source": [ "%%dot\n", "\n", "digraph apply {\n", " rankdir=BT; fontname=Helvetica\n", " node[peripheries=0, style=filled, fillcolor=blue, fontcolor=white,fontname=Helvetica,fixedsize=true,width=1.8,height=0.8]\n", " edge[fontname=Helvetica,fontsize=12,fontcolor=blue,labeldistance=1.8]\n", "\n", " subgraph cluster_student {\n", " label=\"Student\";\n", " style=filled; fillcolor=grey92\n", " submit [shape=record, style=\"filled,rounded\",label=\"Submit\\nRegistration\\n\"]\n", " letter [shape=box, peripheries=0, label=\"Letter\"]\n", " }\n", " subgraph cluster_admin {\n", " label=\"Admin\"\n", " style=filled; fillcolor=grey92\n", " complete [shape=diamond, height=1.5, label=\"Application\\nComplete?\"]\n", " admreject [shape=record, label=\"Write Rejection\\nLetter\\n\"]\n", " }\n", " subgraph cluster_registrar {\n", " label=\"Registrar\"\n", " style=filled; fillcolor=grey92\n", " min [shape=diamond, height=1.8, label=\"Minimum\\nStandard\\nMet?\"]\n", " }\n", " subgraph cluster_faculty {\n", " label=\"Faculty\"\n", " style=filled; fillcolor=grey92\n", " {rank=same;\n", " suitable [shape=diamond, height=1.8,label=\"Suitable for\\nProgram?\\n\"]\n", " facaccept [shape=record, label=\"Write Acceptance\\nLetter\\n\"]\n", " }\n", " }\n", "\n", " submit -> complete\n", " complete -> submit [headlabel=\"no\"]\n", " complete -> min [headlabel=\"yes\"]\n", " min -> admreject [headlabel=\"no\"]\n", " min -> suitable [headlabel=\"yes\"]\n", " suitable -> admreject [headlabel=\"no\"]\n", " suitable -> facaccept [headlabel=\"yes\"]\n", " admreject -> letter\n", " facaccept -> letter\n", "}" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.1" } }, "nbformat": 4, "nbformat_minor": 1 }